/**
 * 
 */
package com.yidu.drug.service.impl;

import java.text.SimpleDateFormat;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import javax.annotation.Resource;

import org.springframework.stereotype.Service;

import com.yidu.drug.common.Page;
import com.yidu.drug.dao.ZgsSellDetailModelMapper;
import com.yidu.drug.model.ZgsSellDetailModel;
import com.yidu.drug.service.ZgsSellDetailService;

/**
 * 总公司销售订单详情Service实现类
 * @author tanglei
 * @date 2018年8月13日 上午10:21:51
 * @version 1.0
 */
@Service
public class ZgsSellDetailServiceImpl implements ZgsSellDetailService{
	//注入总公司销售订单详情Dao
	@Resource
	private ZgsSellDetailModelMapper zgsSellDetailDao;
	
	/**
	 * 根据销售订单详情ID删除销售订单详情数据
	 * @param sdId 传入一个销售订单详情ID
	 * @return 返回一个影响的行数
	 */
	@Override
	public int deleteByPrimaryKey(String sdId) {
		// TODO Auto-generated method stub
		return 0;
	}

	/**
     * 增加销售订单详情数据(一次性增加所有字段)
     * @param record 传入一个销售订单详情对象
     * @return 返回一个影响的行数
     */
	@Override
	public int insert(ZgsSellDetailModel record) {
		// TODO Auto-generated method stub
		return 0;
	}

	/**
     * 增加销售订单详情数据(可增加一个或多个字段)
     * @param record 传入一个销售订单详情对象
     * @return 返回一个影响的行数
     */
	@Override
	public int insertSelective(ZgsSellDetailModel record) {
		// TODO Auto-generated method stub
		return zgsSellDetailDao.insertSelective(record);
	}

	/**
     * 根据ID查询销售订单详情对象
     * @param record 传入一个销售订单详情ID
     * @return 返回一个销售订单详情对象
     */
	@Override
	public ZgsSellDetailModel selectByPrimaryKey(String sdId) {
		// TODO Auto-generated method stub
		return zgsSellDetailDao.selectByPrimaryKey(sdId);
	}

	/**
     * 根据销售订单详情ID修改(可修改一个或多个字段)
     * @param record 传入一个销售订单详情对象
     * @return 返回一个影响的行数
     */
	@Override
	public int updateByPrimaryKeySelective(ZgsSellDetailModel record) {
		// TODO Auto-generated method stub
		return 0;
	}

	/**
     * 根据销售订单详情ID修改(一次性修改全部字段)
     * @param record 传入一个销售订单详情对象
     * @return 返回一个影响的行数
     */
	@Override
	public int updateByPrimaryKey(ZgsSellDetailModel record) {
		// TODO Auto-generated method stub
		return 0;
	}

	 /**
     * 查询总行数
     * @param record 传入一个销售订单详情对象
     * @return 返回一个总行数
     */
	@Override
	public long findRows(ZgsSellDetailModel record) {
		//调用销售订单详情Dao的查询总行数的方法
		return zgsSellDetailDao.findRows(record);
	}

	/**
	 * 根据销售订单ID查询销售订单详情数据
	 * @param record 传入一个销售订单详情对象
	 * @return 返回一个map集合
	 */
	@Override
	public Map<String,Object> findBySoId(ZgsSellDetailModel record) {
		//创建一个分页的对象
		Page page = new Page();
		//给分页对象的页数属性赋值，数值为销售订单详情对象里面的页数数值
		page.setPage(Integer.valueOf(record.getPage()));
		//给分页对象的每页显示的行数属性赋值，数值为销售订单详情对象里面的每页显示行数的数值
		page.setRows(Integer.valueOf(record.getLimit()));
		//给销售订单详情对象里的分页对象赋值
		record.setPages(page);
		//调用销售订单详情Dao的根据销售订单ID查询的方法，并将得到的数据用集合接收
		List<ZgsSellDetailModel> list = zgsSellDetailDao.findBySoId(record);
		
		//得到一个总行数
		Long count = zgsSellDetailDao.findRows(record);
		//创建一个map集合
		Map<String,Object> map = new HashMap<String, Object>();
		//给map集合赋值
		map.put("code",0);
		map.put("msg","");
		map.put("count",count);
		map.put("data", list);
		//返回
		return map;
	}

}
